Applications are designed to perform specific functions for end users or, in some instances, for other applications. In order to perform these specific functions, applications must be configured. On occasion, an application configuration must be changed due to periodic updates, remedial updates, or incidental updates. For example, due to security concerns, an application configuration may need to be periodically updated to change associated passwords. Also, new releases of an application may require changes to the configuration of the application. Moreover, an application configuration may need to be changed to remedy problems caused by changes in usage patterns including excessive traffic to a website or large latency in a specific network path. On the other hand, changes in resources on which an application depends may instigate a need for changes in the configuration of the application. For example, an application may depend on a remote web server to perform specific functions. If changes are made to the remote web server, the configuration of the application may also need to be changed so that the application continues to perform as designed.
Currently, applications from numerous entities reside in a data center managed by an unrelated third party entity. These data centers utilize security perimeters, such as firewalls, which limit access to the applications to application operators associated with the third party entity. In order to initiate changes to the configuration of an application, an entity must go through the third party. For example, when the configuration of an application needs to be changed, the associated entity must contact the third party that manages the application and open a trouble ticket, which is then assigned to an application operator within the third party. Once the trouble ticket is assigned, the entity must try to explain the desired changes to the application operator as the application operator accesses the application configuration and makes changes.
Since third party entities manage a variety of applications for numerous entities, application operators for the third parties are typically not assigned dedicated applications to manage. Instead, the application operator available to handle the next trouble ticket is assigned, regardless of the application operator's knowledge about the corresponding application. Thus, the application operator assigned to change the configuration of an application likely does not understand the business impact of the requested change in the application configuration or the specific function for which the application was designed. As a result, unnecessary time is spent providing the application operator with enough information to change to application configuration. Once the application configuration is changed and the application is restarted, errors in the configuration often occur either because the application operator did not fully understand the directions provided by the entity or because sufficient care was not taken to correctly configure the application. This lack of knowledge regarding the application configuration on the part of the assigned application operator causes the process of changing the configuration to be inefficient, time consuming, and expensive.
When changes are made to the configuration of an application, the update is required to be documented so that a current application configuration can be referenced. However, in practice, updates are typically not documented. Thus, when further updates to the application configuration are needed, a copy of the current application configuration must be requested from the third party entity where the application resides. Similar to the process of changing the application configuration, an entity associated with the application would have to go through the third party to obtain a copy of the current application configuration, which causes an unnecessary delay in providing further changes to the application configuration.